// InsideCOM.h : Declaration of the CInsideCOM

#ifndef __INSIDECOM_H_
#define __INSIDECOM_H_

#include "resource.h"       // main symbols

/////////////////////////////////////////////////////////////////////////////
// CInsideCOM
class ATL_NO_VTABLE CInsideCOM : 
	public CComObjectRootEx<CComSingleThreadModel>,
	public CComCoClass<CInsideCOM, &CLSID_InsideCOM>,
	public IDispatchImpl<ISum, &IID_ISum, &LIBID_TESTATLLib>
{
public:
	CInsideCOM()
	{
	}

DECLARE_REGISTRY_RESOURCEID(IDR_INSIDECOM)

DECLARE_PROTECT_FINAL_CONSTRUCT()

BEGIN_COM_MAP(CInsideCOM)
	COM_INTERFACE_ENTRY(ISum)
	COM_INTERFACE_ENTRY(IDispatch)
END_COM_MAP()

// ISum
public:
	STDMETHOD(sss)(int x, int y, /*[out, retval]*/ int* sum);
	STDMETHOD(Sum)(int x, int y, /*[out, retval]*/ int* sum);
};

#endif //__INSIDECOM_H_
